Optimizing Sparse Matrix Computations for Register Reuse in SPARSITY
نویسندگان
چکیده
Sparse matrix-vector multiplication is an important computational kernel that tends to perform poorly on modern processors, largely because of its high ratio of memory operations to arithmetic operations. Optimizing this algorithm is difficult, both because of the complexity of memory systems and because the performance is highly dependent on the nonzero structure of the matrix. The Sparsity system is designed to address these problem by allowing users to automatically build sparse matrix kernels that are tuned to their matrices and machines. The most difficult aspect of optimizing these algorithms is selecting among a large set of possible transformations and choosing parameters, such as block size. In this paper we discuss the optimization of two operations: a sparse matrix times a dense vector and a sparse matrix times a set of dense vectors. Our experience indicates that for matrices arising in scientific simulations, register level optimizations are critical, and we focus here on the optimizations and parameter selection techniques used in Sparsity for register-level optimizations. We demonstrate speedups of up to 2× for the single vector case and 5× for the multiple vector case.
منابع مشابه
Program Performance Michelle
Many scienti c applications require sparse matrix computations. For example, Finite Element modeling and N-body simulations. It is di cult to write these codes in a portable way which also achieves high performance because of the sparsity of the matrices and because current architectures have deep memory hierarchies and multiple levels of parallelism. Therefore the implementation of such comput...
متن کاملCAS WAVELET METHOD FOR THE NUMERICAL SOLUTION OF BOUNDARY INTEGRAL EQUATIONS WITH LOGARITHMIC SINGULAR KERNELS
In this paper, we present a computational method for solving boundary integral equations with loga-rithmic singular kernels which occur as reformulations of a boundary value problem for the Laplacian equation. Themethod is based on the use of the Galerkin method with CAS wavelets constructed on the unit interval as basis.This approach utilizes the non-uniform Gauss-Legendre quadrature rule for ...
متن کاملAlgorithms + Data Structures + Transformations = Portable Program Performance
Many scientiic applications require sparse matrix computations. For example, Finite Element model-ing and N-body simulations. It is diicult to write these codes in a portable way which also achieves high performance because of the sparsity of the matrices and because current architectures have deep memory hierarchies and multiple levels of parallelism. Therefore the implementation of such compu...
متن کاملSpeech Enhancement using Adaptive Data-Based Dictionary Learning
In this paper, a speech enhancement method based on sparse representation of data frames has been presented. Speech enhancement is one of the most applicable areas in different signal processing fields. The objective of a speech enhancement system is improvement of either intelligibility or quality of the speech signals. This process is carried out using the speech signal processing techniques ...
متن کاملVoice-based Age and Gender Recognition using Training Generative Sparse Model
Abstract: Gender recognition and age detection are important problems in telephone speech processing to investigate the identity of an individual using voice characteristics. In this paper a new gender and age recognition system is introduced based on generative incoherent models learned using sparse non-negative matrix factorization and atom correction post-processing method. Similar to genera...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001